home *** CD-ROM | disk | FTP | other *** search
/ Grand Slam 3 / Grand Slam 3.iso / 024 / mass-ult.arj / NIXSHADE.DOC < prev    next >
Text File  |  1995-04-21  |  7KB  |  175 lines

  1. ──────────────────────────────────────────────────────────────────────────────
  2. ·     ·     ███▄ ▄███  ▄███▄  ███████ ███████ ▄█▄ ███   ███ ███▀▀▀▀·      |   
  3.      |     ·███▀█▀███·▄██ ██▄ ██   ·▀ ██    ▀ ·▀  ███   ███ ███     ·   --o-- 
  4. ·  --o--    ███ · ███ ███▄███ ▀▀▀▀███ ▀▀▀▀███ ███·███·  ███ ███▀▀▀    ·   |   
  5.    · |      ███   ███ ███▀███ ▄  ·███ ▄·  ███ ███  ███ ███  ███   ·       · ·
  6.  ·     ·    ███  ·███ ███ ███ ███████ ███████ ███   █████   ███▄▄▄▄  ·
  7.                                A Living Legend
  8. ──────────────────────────────────────────────────────────────────────────────
  9.  
  10.                                    Presents
  11.  
  12.                                   NiX Shading
  13.  
  14.                      When Phong just ain't good enough anymore...
  15.  
  16.                                by NiX / MASSiVE
  17.  
  18. ──────────────────────────────────────────────────────────────────────────────
  19.  
  20.                                  NIX SHADING
  21.  
  22. ──────────────────────────────────────────────────────────────────────────────
  23.  
  24. What is NiX Shading?
  25.  
  26. NiX Shading is a new shading method developed by NiX / MASSiVE (That's me!).
  27. I came up with the method when I was thinking of a fast way to do real Phong
  28. shading, which by that time was in my eyes the best shading method around.
  29.  
  30. The advantages of NiX-Shading are enormous, it provides shading which in theory
  31. is better as Phong, but with just as much lights as you wish without any
  32. speed loss, and talking about the speed, NiX-Shading is exactly as fast as
  33. a texture-mapper!
  34.  
  35. ──────────────────────────────────────────────────────────────────────────────
  36.  
  37. Why is it better then Phong?
  38.  
  39. The advantage above Phong shading is that NiX-Shading uses an non-linear
  40. interpolation of the normalvector. When you do Phong shading you will notice
  41. that when interpolating the normals linear (as Phong dictates) the length
  42. of the normalvector changes, this ofcourse isn't correct. NiX-Shading keeps
  43. the lenght of the normal constant, and also gives proper interpolation.
  44. As said before, all as fast as texturemapping!
  45.  
  46. How does it works?
  47.  
  48. To do the non-linear interpolation NiX-Shading doesn't interpolates the
  49. X, Y and Z factor of the normal but the rotation around X and Y axis needed
  50. to let the vector (0,0,256) equal the normalvector at a certain vertice.
  51. The Z axis isn't necessary because rotating the vector (0,0,256) around the
  52. Z axis doesn't makes any difference.
  53.  
  54. To obtain this angles you should take the arcsin from the X and Y parts of
  55. a normalized normalvector. The arcsin of the X part gives the angle for the
  56. Y axis, and the arcsin of the Z part gives the angle for the X axis.
  57.  
  58. Now we only have to interpolate this 2 angles between the vertices. Using this
  59. angles we know the normalvector of every pixel to draw, and using this normal
  60. vector we can determine the color.
  61.  
  62. OK, But how can this be just as fast as texuremapping?
  63.  
  64. The angles calculated can be used as coordinates on a texture, the texture
  65. should contain a circlepattern, with the brightest color in the middle, and
  66. futher from the middle the darker colors. This might sound a little strange,
  67. but think clearly about what I wrote, and try to realize the mathematical
  68. meaning.
  69.  
  70. How to do the multiple lights without speed loss?
  71.  
  72. If you understand it correctly you will notice that for every possible normal
  73. you can set the color, just by changing the color in the texture. As described
  74. above the texture only contains one circlepattern, if you add more of them, and
  75. let the colors mix, you will have more lights. However, on a 256 color modes
  76. it is very hard to use multiple lights with different colors, because you
  77. haven't got enough colors for the mixing.
  78.  
  79. ──────────────────────────────────────────────────────────────────────────────
  80. Closing words:
  81.  
  82. I realise that this is a very short and probably not very clear explanation,
  83. but if you need more info you can always contact me. I'll be happy to help
  84. you out.
  85.  
  86. Signed,
  87.  
  88. Jurjen Katsman
  89. NiX / MASSiVE
  90.  
  91. ──────────────────────────────────────────────────────────────────────────────
  92.  
  93. Thanks and Greetings:
  94.  
  95. Special thanks to:
  96. Laserdance for giving me feedback on the method, and for the Phong explanation.
  97. And BTW: Never say something is impossible :-)
  98.  
  99. Sentinel / Agony for wanting to know more about this method, forcing me to
  100. make it myself... And ofcourse for helping with the demo!
  101.  
  102. QuickSilver / Image! for letting us into the Reality'96 organisation!
  103.  
  104. Also greetz to: Jinx/Logic Design, Hammer/Agony, Manticore/Hazard, GBC,
  105. Code Red/Hazard, everyone in DSC and DGi, and the ones I've forgotten...
  106.  
  107. ──────────────────────────────────────────────────────────────────────────────
  108.  
  109. Members List:
  110.  
  111. At the moment MASSiVE consists of 5 members:
  112.  
  113. - NiX                   Main Coding / Organizer
  114. - CONTAGiON             Music / Co-Organizer
  115. - DiGiT                 Graphics
  116. - Butterfly             Coding Support / Research
  117. - Acid Brain            Graphics / Object Design
  118.  
  119. ──────────────────────────────────────────────────────────────────────────────
  120. How to get in touch with us:
  121.  
  122. To contact us you can send mail to us at one of our distribution-sites, a list
  123. is in this file.
  124.  
  125. You can also get in touch with MASSiVE by sending us
  126. netmail, you'll have to address it to:
  127.  
  128. Hendrik van den Boogaard at
  129. ---------------------------
  130.     Fido: 2:512/64    [Public Board Driebergen]
  131.      Sig: 27:2331/260 [Diabolo BBS Utrecht]
  132.      SBC: 14:1000/653 [Public Board Driebergen]
  133.      DGi: 68:310/17   [Sledge Hammer]
  134. Internet: massive.knoware.nl
  135.  
  136. ──────────────────────────────────────────────────────────────────────────────
  137.  
  138. You can also reach us at the following addres by normal mail:
  139.  
  140. Jurjen Katsman / NiX
  141. Koppelweg 93
  142. 3704 GG Zeist
  143. Holland
  144. Speech: +31 (0)3404-54544
  145.  
  146. ──────────────────────────────────────────────────────────────────────────────
  147.  
  148.                          - Distribution site list -
  149.  
  150. │BBS Name         │BBS number              │Sysop          │Comments        │
  151. └─────────────────┴────────────────────────┴───────────────┴────────────────┘
  152.  MASSiVE BBS       +31(0)????-????          Contagion       MASSiVE WHQ (*)
  153.  GBC II            +31(0)2502-49975         Code Red        MASSiVE EHQ
  154.  GBC I             +31(0)2503-25390         Consieler
  155.  Sonority Systems  +31(0)30-287842          Cyanosis
  156.  The Real World    +31(0)53-330190          Da Chief        Ground Zero WHQ
  157.  
  158.  Enigma BBS        +32-2-6403136            Dark Angel      Belgium HQ
  159.  World is Crazy    +33 21.57.14.70          FanFan          France HQ
  160.  
  161. (*) At the moment MASSiVE BBS isn't online yet, as soon as it is, it will
  162.     become our new WHQ.
  163.  
  164. LIttle message to Dark Angel: As you can see we have accepted you as a
  165. dist-site, sorry about not mailing you but I will send mail soon...
  166.  
  167. We are still looking for demo oriented boards in every country accept Holland,
  168. if you are interested in becoming a MASSiVE distribution site, please contact
  169. us.
  170.  
  171. ──────────────────────────────────────────────────────────────────────────────
  172.  
  173.  
  174.                 
  175.